﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
using System.Data;
using CG67.EspaceRencontre.Outils;

namespace CG67.EspaceRencontre.AccesDonnees
{
    public class TypeRendezVousDB
    {
        #region Attributs
        /// <summary>
        /// chaine de connexion figurant dans Web.config
        /// </summary>
        private static ConnectionStringSettings connexionString = ConfigurationManager.ConnectionStrings["connexionEspaceRencontre"];
        #endregion

        #region GetTypeRendezVousById
        /// <summary>
        /// recupère le type de RDV corrrespondant à l'identifiant entré
        /// </summary>
        /// <param name="id"><c>int</c> : identifiant du type de RDV</param>
        /// <returns><c>DataSet</c></returns>
        public static DataSet GetTypeRendezVousById(int id)
        {
            String requete = "SELECT * FROM TYPERENDEZVOUS WHERE ID='" + id + "'";
            DataSet res = BaseDeDonnee.BuildDataSet(requete, connexionString);
            return res;
        }
        #endregion

        #region GetAllTypeRendezVous
        /// <summary>
        /// récupère la liste de tous les types de RDV
        /// </summary>
        /// <returns><c>DataSet</c></returns>
        public static DataSet GetAllTypeRendezVous()
        {
            String query = "SELECT * FROM TYPERENDEZVOUS";
            DataSet res = BaseDeDonnee.BuildDataSet(query, connexionString);
            return res;
        }
        #endregion

        #region UpdateTypeRendezVous
        /// <summary>
        /// màj du libellé d'un type de RDV en fonction de son identfiant
        /// </summary>
        /// <param name="id"><c>int</c> : identifiant du libellé</param>
        /// <param name="libelle"><c>String</c> : libellé du type de RDV</param>
        public static void UpdateTypeRendezVous(int id, String libelle)
        {
            BaseDeDonnee.ExecuteNonQuery("UPDATE TYPERENDEZVOUS set [LIBELLE]='" + libelle + "' WHERE ID='" + id + "'", connexionString);
        }
        #endregion

        #region CreateTypeRendezVous
        /// <summary>
        /// crée un nouveau type de RDV dans la BDD
        /// </summary>
        /// <param name="libelle"><c>String</c> : libellé du type de RDV</param>
        public static void CreateTypeRendezVous(String libelle)
        {
            BaseDeDonnee.ExecuteNonQuery("INSERT INTO TYPERENDEZVOUS([LIBELLE]) values('" + libelle + "')", connexionString);
        }
        #endregion

        #region DeleteTypeRendezVous
        /// <summary>
        /// supprime un type de RDV de la BDD
        /// </summary>
        /// <param name="id"><c>int</c> : identifiant du type de RDV</param>
        public static void DeleteTypeRendezVous(int id)
        {
            BaseDeDonnee.ExecuteNonQuery("DELETE FROM TYPERENDEZVOUS WHERE ID='" + id + "'", connexionString);
        }
        #endregion
    }
}

